package IO;

import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class FileTest {
    public static void main(String[] args) throws IOException {
        File f1 =new File("D:\\BanGong\\TestFile\\log.txt");
        System.out.println(f1.exists());//判断文件是否存在
        /*if (!f1.exists()) {
            f1.createNewFile();//如果该文件不存在，创建，类型:文件
        }*/
        if (!f1.exists()) {
            //f1.mkdirs();:如果File对象写的是绝对路径，则以多重目录形式创建
            //例如：File f1 =new File("D:\\BanGong\\TestFile\\log.txt");
            f1.mkdir();//如果该文件不存在，创建，类型:文件夹
        }
        //获取文件的路径,返回值String类型
        String parentPath =f1.getParent();
        System.out.println("获取f1所写的路径："+parentPath);//打印出该文件的路径
        //获取绝对路径,返回值File类型
        File parentFile =f1.getParentFile();
        System.out.println("获取的绝对路径："+parentFile);
        //获取文件名
        System.out.println("文件名"+f1.getName());
        //判断是否是一个目录
        System.out.println("是否是一个目录"+f1.isDirectory());
        //判断是否是一个文件
        System.out.println("是否是一个文件"+f1.isFile());
        //获取文件最后一次修改时间
        long haoMiao =f1.lastModified();//从1970年到现在的时间
        Date time = new Date(haoMiao);//将总毫秒转换成日期
        SimpleDateFormat sdf =new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");//修改时间显示格式
        String steTime =sdf.format(time);//传入为String类型
        System.out.println(steTime);//打印输出结果
        //获取文件大小
        System.out.println(f1.length());
        //给文件重命名，自己查不写了
        //获取当前目录下的所有子文件
        File[] files =f1.listFiles();//传入到一个数组
        for (File file: files) {//循环遍历
            System.out.println(file.getAbsolutePath());
        }
    }

}
